#ifndef _VARIABILES_H_
#define _VARIABILES_H_

#include "console.h"

#include <map>
#include <string>

class Console;

/* classe da usare per memorizzare tutti i parametri del client */ 
class Variables
{
	private:
		std::map<std::string, const char *> stringMap;
		std::map<std::string, float> floatMap;
		std::map<std::string, int> intMap;
		std::map<std::string, bool> boolMap;
				
	public:
		Variables(void);
		~Variables(void);
		/* imposta una variabile di tipo stringa */
		void setVar(char *name, char *value);
		/* imposta una variabile di tipo int */
		void setVar(char *name, int value);
		/* imposta una variabile di tipo float */
		void setVar(char *name, float value);
		/* imposta una variabile di tipo bool */
		void setVar(char *name, bool value);
		/* restituisce una variabile di tipo stringa */
		const char *getStringVar(char *name);
		/* restituisce una variabile di tipo int */
		int getIntVar(char *name);
		/* restituisce una variabile di tipo float */
		float getFloatVar(char *name);
		/* restituisce una variabile di tipo bool */
		bool getBoolVar(char *name);
};

#endif
